OPENQASM 2.0;
include "qelib1.inc";
qreg q[5];
creg m_b[1];
creg m_y[1];
creg m_a[1];
creg m_x[1];
u2(0,pi) q[0];
u3(pi/4,-pi/2,pi/2) q[1];
cx q[0],q[2];
cx q[1],q[0];
u2(0,0) q[0];
u3(pi/4,-pi/2,pi/2) q[1];
cx q[0],q[1];
u2(-pi,-pi/2) q[0];
cx q[1],q[0];
u2(pi/2,-pi) q[1];
u3(pi/4,-pi/2,pi/2) q[2];
u3(pi/4,-pi/2,pi/2) q[3];
cx q[3],q[2];
u2(0,0) q[2];
u3(pi/4,-pi/2,pi/2) q[3];
cx q[2],q[3];
u2(-pi,-pi/2) q[2];
cx q[3],q[2];
u2(pi/2,-pi) q[3];

